import axios from 'axios'

// 多实例来调用axios中的请求方式
const ins = axios.create({
  // 超时时长 ms
  timeout: 10000
})

// 响应拦截器
ins.interceptors.response.use(
  (res) => {
    return res.data
  },
  (err) => Promise.reject(err)
)


// 请求拦截器
ins.interceptors.request.use((config) => {
  return config
})

/**
 * get请求
 * @param {string} url 请求url地址
 * @param {object} config 额外请求头参数
 * @returns Promise<any>
 */
export const get = (url, config = {}) => ins.get(url, config)

/**
 * post请求
 * @param {string} url 请求url地址
 * @param {object|formData} data 请求体数据
 * @param {object} config 额外请求头参数
 * @returns Promise<any>
 */
export const post = (url, data = {}, config = {}) => ins.post(url, data, config)
